package com.Shuang.Test3.Timer;

import java.time.Duration;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.TimerTask;

public class TimeTask extends TimerTask{
    // 高考开始时间
    private LocalDateTime startTime;

    // 构造器，对高考的开始时间进行初始化
    public TimeTask() {
        String s = "2025-06-07 09:00:00";
        //解析开始字符串的时间成日期
        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        startTime = LocalDateTime.parse(s, dtf);
        String[] names = {"星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日", };
        System.out.println("\t\t\t2025年高考倒计时");
        System.out.println("2025年高考时间：2025年06月07日\t" + names[startTime.getDayOfWeek().getValue() - 1]);
        System.out.println("现在距离高考还有");
    }

    // 每一秒执行一次该方法
    @Override
    public void run() {

        // 完成倒计时效果
        LocalDateTime now = LocalDateTime.now();  //拿到现在的时间
        Duration duration = Duration.between(now, startTime);//计算未来时间和过去时间的差值

        //得到持续时间的天数小时分秒 打印出来
        System.out.println(duration.toDaysPart() + " 天 " + duration.toHoursPart() + " 时 "
                + duration.toMinutesPart() + " 分 " + duration.toSecondsPart() + " 秒");

    }

}
